/*
  该文件是整个项目的入口文件
*/
// 引入vue 。vue.runtime.esm.js
import Vue from 'vue'
//引入App组件，它是所有组件的父组件
import App from './App.vue'
//关闭vue的生产提示
Vue.config.productionTip = false

/*
 关于不同版本的Vue:
    1.vue.js'jvue.runtime.xxx.js的区别:
      (1).vue.js是完整版的Vue，包含:核心功能+模板解析器。
      (2).vue.runtime.xxx.js是运行版的Vue，只包含:核心功能:没有板解析器
    2.因为vue.runtime.xxx.js没有模板解析器，所以不能使用template配置项，需要使用render所数接收到的createElement所数去指定具体内容。
 */

new Vue({
  /**
   * 解释 render: h => h(App) 由来：
   * VUE由两部分组成：vue核心+模板解析器。import Vue from 'vue' 引入的vue只有核心，没有模板解析器
   * 正常的话应该写成
   * new Vue({
      template:`<div>你好呀</div>`
      components:{App}
   * })
   * 但是 import Vue from 'vue' 引入的vue是一个“残缺”包，没有模板解析器，所以提供了render
   * new Vue({
        render(createElement){
          return createElement('div','你好呀')
        }
        简写：
        render:(createElement)=>reateElement('div','你好呀')
        再次简化：
        render:h=>h(App)
   * })
   */

  render: h => h(App),
}).$mount('#app')
